\doxysection{Logger.\+h}
\hypertarget{_logger_8h_source}{}\label{_logger_8h_source}\index{Log/Header/Logger.h@{Log/Header/Logger.h}}
\mbox{\hyperlink{_logger_8h}{浏览该文件的文档.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ }
\DoxyCodeLine{00006\ \textcolor{preprocessor}{\#ifndef\ LOGGER\_LOGGER\_H}}
\DoxyCodeLine{00007\ \textcolor{preprocessor}{\#define\ LOGGER\_LOGGER\_H}}
\DoxyCodeLine{00008\ }
\DoxyCodeLine{00009\ \textcolor{preprocessor}{\#include\ <string\_view>}}
\DoxyCodeLine{00010\ \textcolor{preprocessor}{\#include\ <string>}}
\DoxyCodeLine{00011\ \textcolor{preprocessor}{\#include\ <memory>}}
\DoxyCodeLine{00012\ \textcolor{preprocessor}{\#include\ <iostream>}}
\DoxyCodeLine{00013\ \textcolor{preprocessor}{\#include\ <source\_location>}}
\DoxyCodeLine{00014\ \textcolor{preprocessor}{\#include\ <deque>}}
\DoxyCodeLine{00015\ \textcolor{preprocessor}{\#include\ <condition\_variable>}}
\DoxyCodeLine{00016\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{_log_8h}{Component/Log.h}}"{}}}
\DoxyCodeLine{00017\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{_write_8h}{Behavior/Write/Write.h}}"{}}}
\DoxyCodeLine{00018\ }
\DoxyCodeLine{00019\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_logger}{Logger}}\ \{}
\DoxyCodeLine{00020\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00021\ \ \ \ \ \textcolor{keyword}{virtual}\ \mbox{\hyperlink{class_logger_a68cafca721107a954d85043a553dd217}{\string~Logger}}()\ =\ \textcolor{keywordflow}{default};}
\DoxyCodeLine{00022\ }
\DoxyCodeLine{00023\ \ \ \ \ \textcolor{comment}{//通过静态局部变量\ 实现线程安全的单例模式}}
\DoxyCodeLine{00024\ \ \ \ \ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_logger}{Logger}}\ \&\mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{getIntance}}()\ \{}
\DoxyCodeLine{00025\ \ \ \ \ \ \ \ \ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_logger}{Logger}}\ instance;}
\DoxyCodeLine{00026\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ instance;}
\DoxyCodeLine{00027\ \ \ \ \ \}}
\DoxyCodeLine{00028\ }
\DoxyCodeLine{00037\ \ \ \ \ \textcolor{keyword}{virtual}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(std::string\_view\ content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196e}{Log::LogLevel}}\ level\ =\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196eaa603905470e2a5b8c13e96b579ef0dba}{Log::LogLevel::Debug}},}
\DoxyCodeLine{00038\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4}{Log::Output}}\ out\ =\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}},\ std::string\_view\ path\ =\ \textcolor{stringliteral}{"{}./AppLog/"{}},}
\DoxyCodeLine{00039\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{const}\ std::source\_location\ \&location\ =\ std::source\_location::current());}
\DoxyCodeLine{00040\ }
\DoxyCodeLine{00049\ \ \ \ \ \textcolor{keyword}{virtual}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(std::string\_view\ content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196e}{Log::LogLevel}}\ level\ =\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196eaa603905470e2a5b8c13e96b579ef0dba}{Log::LogLevel::Debug}},}
\DoxyCodeLine{00050\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4}{Log::Output}}\ out\ =\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}},\ std::string\_view\ path\ =\ \textcolor{stringliteral}{"{}./AppLog/"{}},}
\DoxyCodeLine{00051\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{const}\ std::source\_location\ \&location\ =\ std::source\_location::current());}
\DoxyCodeLine{00052\ }
\DoxyCodeLine{00053\ }
\DoxyCodeLine{00058\ \ \ \ \ \textcolor{keyword}{inline}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_logger_adcdbfe0302dd53c9db3d355ddee8a3b6}{startLogThread}}();}
\DoxyCodeLine{00059\ }
\DoxyCodeLine{00063\ \ \ \ \ \textcolor{keyword}{inline}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_logger_aa223fb9d3d6becff1ee3ae8c40ec11f3}{stopLogThread}}();}
\DoxyCodeLine{00064\ }
\DoxyCodeLine{00065\ }
\DoxyCodeLine{00066\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00067\ }
\DoxyCodeLine{00068\ \ \ \ \ \mbox{\hyperlink{class_logger_ac45b6ef7069b222c094da3724d1aa8fb}{Logger}}()\ =\ \textcolor{keywordflow}{default};}
\DoxyCodeLine{00069\ }
\DoxyCodeLine{00070\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_logger_a10c246805aee7279977997e1ae6832ab}{setIsRunning}}(\textcolor{keywordtype}{bool}\ isRunning)\ \{\ \mbox{\hyperlink{class_logger_a710380268f6d4bb1bfa841e0d71b3868}{Logger::mIsRunning}}\ =\ isRunning;\ \}}
\DoxyCodeLine{00071\ }
\DoxyCodeLine{00072\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_logger_a69c0de1dd60ca195eb000a8fa94139a8}{threadExec}}();}
\DoxyCodeLine{00073\ }
\DoxyCodeLine{00074\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_logger_a7d13896ef57933333ed113e6bef06b21}{setWriteBehavior}}(\mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4}{Log::Output}}\ out);}
\DoxyCodeLine{00075\ }
\DoxyCodeLine{00076\ \ \ \ \ \mbox{\hyperlink{class_log}{Log}}\ \mbox{\hyperlink{class_logger_a6cf75422c01fb88b57f4b5f362f6d829}{createLog}}(std::string\_view\ content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196e}{Log::LogLevel}}\ level\ =\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196eaa603905470e2a5b8c13e96b579ef0dba}{Log::LogLevel::Debug}},}
\DoxyCodeLine{00077\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4}{Log::Output}}\ out\ =\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}},\ std::string\_view\ path\ =\ \textcolor{stringliteral}{"{}./Log/"{}},}
\DoxyCodeLine{00078\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{const}\ std::source\_location\ \&location\ =\ std::source\_location::current());}
\DoxyCodeLine{00079\ }
\DoxyCodeLine{00080\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00081\ \ \ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{class_logger_a710380268f6d4bb1bfa841e0d71b3868}{mIsRunning}}\{\textcolor{keyword}{false}\};}
\DoxyCodeLine{00082\ \ \ \ \ \textcolor{comment}{//策略模式，实现算法替换}}
\DoxyCodeLine{00083\ \ \ \ \ std::unique\_ptr<Write>\ \mbox{\hyperlink{class_logger_ac8ffdc12d6b2ded2029b8de314b2ba12}{writeBehavior}};}
\DoxyCodeLine{00084\ }
\DoxyCodeLine{00085\ \ \ \ \ std::mutex\ \mbox{\hyperlink{class_logger_a89fd90aeb0d8a6f67511e22b64d14eb6}{mMutex}};}
\DoxyCodeLine{00086\ \ \ \ \ std::deque<Log>\ \mbox{\hyperlink{class_logger_a4b3566ea069cfd43703b194ce9846d5e}{mLogs}};}
\DoxyCodeLine{00087\ \ \ \ \ \textcolor{comment}{//std::condition\_variable\ mCond;}}
\DoxyCodeLine{00088\ \ \ \ \ std::thread\ \mbox{\hyperlink{class_logger_a9d7b008ee613498e7d2c6a320962555a}{thread}};}
\DoxyCodeLine{00089\ \};}
\DoxyCodeLine{00090\ }
\DoxyCodeLine{00091\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00092\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_logger_adcdbfe0302dd53c9db3d355ddee8a3b6}{Logger::startLogThread}}()\ \{}
\DoxyCodeLine{00093\ \ \ \ \ \mbox{\hyperlink{class_logger_a10c246805aee7279977997e1ae6832ab}{setIsRunning}}(\textcolor{keyword}{true});}
\DoxyCodeLine{00094\ \ \ \ \ \mbox{\hyperlink{class_logger_a9d7b008ee613498e7d2c6a320962555a}{thread}}\ =\ std::thread(\&\mbox{\hyperlink{class_logger_a69c0de1dd60ca195eb000a8fa94139a8}{Logger::threadExec}},\ \textcolor{keyword}{this});}
\DoxyCodeLine{00095\ \}}
\DoxyCodeLine{00096\ }
\DoxyCodeLine{00097\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00098\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_logger_aa223fb9d3d6becff1ee3ae8c40ec11f3}{Logger::stopLogThread}}()\ \{}
\DoxyCodeLine{00099\ \ \ \ \ \textcolor{comment}{//等待处理全部日志}}
\DoxyCodeLine{00100\ \ \ \ \ \textcolor{keywordflow}{while}\ (!\mbox{\hyperlink{class_logger_a4b3566ea069cfd43703b194ce9846d5e}{mLogs}}.empty());}
\DoxyCodeLine{00101\ \ \ \ \ \mbox{\hyperlink{class_logger_a10c246805aee7279977997e1ae6832ab}{setIsRunning}}(\textcolor{keyword}{false});}
\DoxyCodeLine{00102\ }
\DoxyCodeLine{00103\ \ \ \ \ \textcolor{comment}{//主线程停止线程日志时\ 等待日志线程结束}}
\DoxyCodeLine{00104\ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_logger_a9d7b008ee613498e7d2c6a320962555a}{thread}}.joinable())}
\DoxyCodeLine{00105\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_logger_a9d7b008ee613498e7d2c6a320962555a}{thread}}.join();}
\DoxyCodeLine{00106\ \}}
\DoxyCodeLine{00107\ }
\DoxyCodeLine{00112\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00113\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a523639b09ac1f43c7e29b0ba6655fd4a}{syncLogToConsoleWithInfo}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00114\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea4059b0251f66a18cb56f544728796875}{Log::LogLevel::Info}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00115\ \}}
\DoxyCodeLine{00116\ }
\DoxyCodeLine{00121\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00122\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a633058ed84c2f19a24bfd737602c8fdb}{syncLogToConsoleWithDebug}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00123\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196eaa603905470e2a5b8c13e96b579ef0dba}{Log::LogLevel::Debug}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00124\ \}}
\DoxyCodeLine{00125\ }
\DoxyCodeLine{00130\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00131\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_addda6a143d861e2d916643e8ba4c3e63}{syncLogToConsoleWithWarning}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00132\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea0eaadb4fcb48a0a0ed7bc9868be9fbaa}{Log::LogLevel::Warning}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00133\ \}}
\DoxyCodeLine{00134\ }
\DoxyCodeLine{00139\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00140\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a206a3e993a226bdf76356acc1a2f1051}{syncLogToConsoleWithError}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00141\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea902b0d55fddef6f8d651fe1035b7d4bd}{Log::LogLevel::Error}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00142\ \}}
\DoxyCodeLine{00143\ }
\DoxyCodeLine{00148\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00149\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_aec5386e3e1ce867555623b37945cd31e}{syncLogToConsoleWithFatal}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00150\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea882384ec38ce8d9582b57e70861730e4}{Log::LogLevel::Fatal}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00151\ \}}
\DoxyCodeLine{00152\ }
\DoxyCodeLine{00157\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a165f452f1cf15b99d6fba2c16b485a46}{asyncLogToConsoleWithInfo}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00158\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea4059b0251f66a18cb56f544728796875}{Log::LogLevel::Info}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00159\ \}}
\DoxyCodeLine{00160\ }
\DoxyCodeLine{00165\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00166\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a24263b6313df357bfdc7b1f44abadee4}{asyncLogToConsoleWithDebug}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00167\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196eaa603905470e2a5b8c13e96b579ef0dba}{Log::LogLevel::Debug}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00168\ \}}
\DoxyCodeLine{00169\ }
\DoxyCodeLine{00174\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00175\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a6af2dc06b28584b872ead88fe8c21445}{asyncLogToConsoleWithWarning}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00176\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea0eaadb4fcb48a0a0ed7bc9868be9fbaa}{Log::LogLevel::Warning}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00177\ \}}
\DoxyCodeLine{00178\ }
\DoxyCodeLine{00183\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00184\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a26cfc586bd6bab82140d2b814786fdcf}{asyncLogToConsoleWithError}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00185\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea902b0d55fddef6f8d651fe1035b7d4bd}{Log::LogLevel::Error}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00186\ \}}
\DoxyCodeLine{00187\ }
\DoxyCodeLine{00192\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00193\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a58dd46fddc3679aad9c0a65b5ecf8b27}{asyncLogToConsoleWithFatal}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00194\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea882384ec38ce8d9582b57e70861730e4}{Log::LogLevel::Fatal}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4abccaa4aa80831b76c11240a16447975f}{Log::Output::Console}});}
\DoxyCodeLine{00195\ \}}
\DoxyCodeLine{00196\ }
\DoxyCodeLine{00201\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00202\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a82f4625fa85e19311f25f1de28dd3faf}{syncLogToFileWithInfo}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00203\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea4059b0251f66a18cb56f544728796875}{Log::LogLevel::Info}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00204\ \}}
\DoxyCodeLine{00205\ }
\DoxyCodeLine{00210\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00211\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a80999f6e4518653d5607aac46acf0269}{syncLogToFileWithDebug}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00212\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196eaa603905470e2a5b8c13e96b579ef0dba}{Log::LogLevel::Debug}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00213\ \}}
\DoxyCodeLine{00214\ }
\DoxyCodeLine{00219\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00220\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a5bd865626335f44cdf1947389adc7d38}{syncLogToFileWithWarning}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00221\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea0eaadb4fcb48a0a0ed7bc9868be9fbaa}{Log::LogLevel::Warning}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00222\ \}}
\DoxyCodeLine{00223\ }
\DoxyCodeLine{00228\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00229\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a34ca115a82b92ee4934cb37a0f09e680}{syncLogToFileWithError}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00230\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea902b0d55fddef6f8d651fe1035b7d4bd}{Log::LogLevel::Error}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00231\ \}}
\DoxyCodeLine{00232\ }
\DoxyCodeLine{00237\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00238\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_aa37ed8d3bd1c5358f2aca1642797a606}{syncLogToFileWithFatal}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00239\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a67fac285fd603d742a2e0eea7783e9b6}{syncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea882384ec38ce8d9582b57e70861730e4}{Log::LogLevel::Fatal}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00240\ \}}
\DoxyCodeLine{00241\ }
\DoxyCodeLine{00246\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00247\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_aad35da567d9ff0ab4248ec4cdf82a844}{asyncLogToFileWithInfo}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00248\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea4059b0251f66a18cb56f544728796875}{Log::LogLevel::Info}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00249\ \}}
\DoxyCodeLine{00250\ }
\DoxyCodeLine{00255\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00256\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a413f603ddea15939e76860febbec016e}{asyncLogToFileWithDebug}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00257\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196eaa603905470e2a5b8c13e96b579ef0dba}{Log::LogLevel::Debug}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00258\ \}}
\DoxyCodeLine{00259\ }
\DoxyCodeLine{00264\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00265\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a797454d1747307acf576df248196a682}{asyncLogToFileWithWarning}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00266\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea0eaadb4fcb48a0a0ed7bc9868be9fbaa}{Log::LogLevel::Warning}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00267\ \}}
\DoxyCodeLine{00268\ }
\DoxyCodeLine{00273\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00274\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_a60aa9085fa6c05765195d5347920bda6}{asyncLogToFileWithError}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00275\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea902b0d55fddef6f8d651fe1035b7d4bd}{Log::LogLevel::Error}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00276\ \}}
\DoxyCodeLine{00277\ }
\DoxyCodeLine{00282\ \textcolor{keyword}{inline}}
\DoxyCodeLine{00283\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{_logger_8h_ac5b23d1dc82718fcb6f0c9d6be557673}{asyncLogToFileWithFatal}}(std::string\_view\ content)\ \{}
\DoxyCodeLine{00284\ \ \ \ \ \mbox{\hyperlink{class_logger_ad8c2e8259462504427739fbaf2e056bd}{Logger::getIntance}}().\mbox{\hyperlink{class_logger_a3de1b6ed57224b98699fa1fb4d69537f}{asyncLog}}(content,\ \mbox{\hyperlink{class_log_a3718f3e276c3d3e23b58a3b8236d196ea882384ec38ce8d9582b57e70861730e4}{Log::LogLevel::Fatal}},\ \mbox{\hyperlink{class_log_ae9a5b0a1962f5076860bde2221f8e9e4a0b27918290ff5323bea1e3b78a9cf04e}{Log::Output::File}});}
\DoxyCodeLine{00285\ \}}
\DoxyCodeLine{00286\ }
\DoxyCodeLine{00287\ }
\DoxyCodeLine{00288\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//LOGGER\_LOGGER\_H}}

\end{DoxyCode}
